/**
 * <b>项目名：</b>hclv-web<br/>  
 * <b>包名：</b>com.flea.hclv.service<br/>  
 * <b>文件名：</b>HServiceOrderService.java<br/>  
 * <b>版本信息：</b>1.0<br/>  
 * <b>日期：</b>2018年11月16日 上午11:58:30<br/>  
 * <b>COPYRIGHT 2010-2012 ALL RIGHTS RESERVED 虫子科技</b>-版权所有<br/>
 */
package com.flea.hclv.service;

import com.flea.hclv.model.entity.HServiceOrder;
import com.flea.hclv.util.ServerResponse;
import com.flea.system.bean.FleaPage;

import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;

/**
 * @description
 * @createTime 2018年11月16日 上午11:58:30
 * @modifyTime 
 * @author myflea@163.com
 * @version 1.0
 */
public interface HServiceOrderService {

	ServerResponse<HServiceOrder> addOrder(HttpServletRequest request, String model) throws Exception;
	/**
	 * 
	 * @description 根据特定的条件，分页查询订单信息
	 * @methodName findAllOrderByOrgIdPaging
	 * @param
	 * @param model
	 * @returnType ServerResponse<FleaPage<HServiceOrder>>
	 * @throw
	 */
	ServerResponse<FleaPage<HServiceOrder>> findAllOrderByOrgIdPagingForSale(
			HttpServletRequest request, int curPage, int pageSize, String model) throws Exception;
	/**
	 * 
	 * @description
	 * @methodName findByOrderId
	 * @param
	 * @returnType ServerResponse<HServiceOrder>
	 * @throw
	 */
	ServerResponse<Map<String, Object>> findByOrderId(String serviceOrderId);
	/**
	 * 
	 * @description 更新订单信息
	 * @methodName updateOrder
	 * @param
	 * @returnType ServerResponse<HServiceOrder>   
	 * @throw
	 */
	ServerResponse<HServiceOrder> updateOrder(HttpServletRequest request,String model)throws Exception;
	ServerResponse<HServiceOrder> findByGroupId(String model)throws Exception;
	ServerResponse<HServiceOrder> findByOrderNo(String orderNo)throws Exception;

  ServerResponse<HServiceOrder> updateOrderToConfirm(HttpServletRequest request, String model) throws Exception;

  ServerResponse<HServiceOrder> updateOrderToClose(HttpServletRequest request, String model) throws Exception;

  ServerResponse<HServiceOrder> updateOrderToFinish(HttpServletRequest request, String model) throws Exception;

  ServerResponse<FleaPage<HServiceOrder>> findAllOrderByOrgIdPagingForBuy(HttpServletRequest request, int curPage, int pageSize, String model)throws Exception;

  ServerResponse findByTimeTableId(String timeTableId, HttpServletRequest request, int curPage, int pageSize)throws Exception;

  List<HServiceOrder> findByTimeTableIdToList(String id)throws Exception;
}
